﻿using Leo.Awesome.Attachment.Enums;
using System;
using Volo.Abp.Domain.Entities.Auditing;

namespace Leo.Awesome.Attachment
{
    /// <summary>
    /// 附件信息表
    /// </summary>
    public class Attachment : FullAuditedEntity<Guid>
    {
        /// <summary>
        /// 附件类型
        /// </summary>
        public string Type { get; set; }  

        /// <summary>
        /// 名称
        /// </summary>
        public string Filename { get; set; }

        /// <summary>
        /// 大小
        /// </summary>
        public long FileSize { get; set; }

        /// <summary>
        /// 上传者的 ID
        /// </summary>
        public Guid? UploaderId { get; set; }

        /// <summary>
        /// 存储类型
        /// </summary>
        public string StorageType { get; set; } = "Blob";

        /// <summary>
        /// 文件夹
        /// </summary>
        public FolderType FolderType { get; set; }

        /// <summary>
        /// 存储路径
        /// </summary>
        public string StoragePath { get; set; }

        /// <summary>
        /// 关联者
        /// </summary>
        public string RelatedTo { get; set; }

        /// <summary>
        /// MD5码
        /// </summary>
        public string MD5 { get; set; }
    }
}
